menu button: avoid property order dependencies
authorMatthias Clasen <mclasen@redhat.com>
Sat, 22 Feb 2014 17:49:24 +0000 (12:49 -0500)
committerMatthias Clasen <mclasen@redhat.com>
Sat, 22 Feb 2014 17:49:24 +0000 (12:49 -0500)
With the code as written, use-popover has to be set first,
before the model. To avoid this ordering dependency, re-set
the model when use-popover changes.

gtk/gtkmenubutton.c

index 763f110f80758b82d1ae2b17d0c3e6e23302bbdd..dd966a45235c9b05e6a6db4ffe655068a32748a2 100644 (file)
@@ -1060,7 +1060,14 @@ gtk_menu_button_set_use_popover (GtkMenuButton *menu_button,
 
   priv->use_popover = use_popover;
 
+  g_object_freeze_notify (G_OBJECT (menu_button));
+
+  if (priv->model)
+    gtk_menu_button_set_menu_model (menu_button, priv->model);
+
   g_object_notify (G_OBJECT (menu_button), "use-popover");
+
+  g_object_thaw_notify (G_OBJECT (menu_button));
 }
 
 /**